package com.itheima.operator;

public class OperatorDemo4 {
    public static void main(String[] args) {
        // 目标：赋值运算符。
        int a = 10; // 从右边往左边看
        System.out.println(a);

        // 扩展的赋值运算符
        int i = 5;
        int j = 2;
        i += j; // 等价于 i = (i的类型)（i + j）
        System.out.println(i);

        // 累加：收红包
        double m = 9.9;
        double n = 100;
        m += n; // 等价于 m = (m的类型)(m + n);
        System.out.println(m);

        // 减法：发红包。
        double m2 = 1000;
        double m3 = 521;
        m2 -= m3; // m2 = (m2的类型)(m2 - m3);
        System.out.println(m2);

        int a1 = 10;
        int b1 = 3;
//        a1 *= b1; // 等价于 a1 = (a1的类型)(a1 * b1);
//        a1 /= b1; // 等价于 a1 = (a1的类型)(a1 / b1);
        a1 %= b1; // 等价于 a1 = (a1的类型)(a1 % b1);
        System.out.println(a1);

        // 扩展赋值运算符可以自带强制类型转换，不需要自己手动强制转换！
        byte t1 = 110;
        byte t2 = 120;
        // byte t3 = t1 + t2; // 报错。
        // byte t3 = (byte) (t1 + t2);
        t1 += t2; // 等价于 t1 = (byte) (t1 + t2); 简洁很多！
        System.out.println(t1);
    }
}
